Merge "Refactor Statsd classes to enable null collector to work."
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Tue, 30 May 2017 03:41:13 +0000 (03:41 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Tue, 30 May 2017 03:41:14 +0000 (03:41 +0000)
1  2 
autoload.php
includes/GlobalFunctions.php

diff --combined autoload.php
@@@ -684,7 -684,6 +684,7 @@@ $wgAutoloadLocalClasses = 
        'JsonContentHandler' => __DIR__ . '/includes/content/JsonContentHandler.php',
        'KkConverter' => __DIR__ . '/languages/classes/LanguageKk.php',
        'KuConverter' => __DIR__ . '/languages/classes/LanguageKu.php',
 +      'LBFactory' => __DIR__ . '/includes/libs/rdbms/lbfactory/LBFactory.php',
        'LCStore' => __DIR__ . '/includes/cache/localisation/LCStore.php',
        'LCStoreCDB' => __DIR__ . '/includes/cache/localisation/LCStoreCDB.php',
        'LCStoreDB' => __DIR__ . '/includes/cache/localisation/LCStoreDB.php',
        'MediaWiki\\Widget\\TitleInputWidget' => __DIR__ . '/includes/widget/TitleInputWidget.php',
        'MediaWiki\\Widget\\UserInputWidget' => __DIR__ . '/includes/widget/UserInputWidget.php',
        'MediaWiki\\Widget\\UsersMultiselectWidget' => __DIR__ . '/includes/widget/UsersMultiselectWidget.php',
+       'MediawikiStatsdDataFactory' => __DIR__ . '/includes/libs/stats/MediawikiStatsdDataFactory.php',
        'MemCachedClientforWiki' => __DIR__ . '/includes/compat/MemcachedClientCompat.php',
        'MemcLockManager' => __DIR__ . '/includes/libs/lockmanager/MemcLockManager.php',
        'MemcachedBagOStuff' => __DIR__ . '/includes/libs/objectcache/MemcachedBagOStuff.php',
        'WikiImporter' => __DIR__ . '/includes/import/WikiImporter.php',
        'WikiMap' => __DIR__ . '/includes/WikiMap.php',
        'WikiPage' => __DIR__ . '/includes/page/WikiPage.php',
 -      'WikiReference' => __DIR__ . '/includes/WikiMap.php',
 +      'WikiReference' => __DIR__ . '/includes/WikiReference.php',
        'WikiRevision' => __DIR__ . '/includes/import/WikiRevision.php',
        'WikiStatsOutput' => __DIR__ . '/maintenance/language/StatOutputs.php',
        'WikiTextStructure' => __DIR__ . '/includes/content/WikiTextStructure.php',
        'XhprofData' => __DIR__ . '/includes/libs/XhprofData.php',
        'Xml' => __DIR__ . '/includes/Xml.php',
        'XmlDumpWriter' => __DIR__ . '/includes/export/XmlDumpWriter.php',
 -      'XmlJsCode' => __DIR__ . '/includes/Xml.php',
 +      'XmlJsCode' => __DIR__ . '/includes/XmlJsCode.php',
        'XmlSelect' => __DIR__ . '/includes/XmlSelect.php',
        'XmlTypeCheck' => __DIR__ . '/includes/libs/mime/XmlTypeCheck.php',
        'ZhConverter' => __DIR__ . '/languages/classes/LanguageZh.php',
        'ZipDirectoryReader' => __DIR__ . '/includes/utils/ZipDirectoryReader.php',
 -      'ZipDirectoryReaderError' => __DIR__ . '/includes/utils/ZipDirectoryReader.php',
 +      'ZipDirectoryReaderError' => __DIR__ . '/includes/utils/ZipDirectoryReaderError.php',
        'profile_point' => __DIR__ . '/profileinfo.php',
  ];
@@@ -1191,7 -1191,8 +1191,8 @@@ function wfLogProfilingData() 
        $profiler->logData();
  
        $config = $context->getConfig();
-       if ( $config->get( 'StatsdServer' ) ) {
+       $stats = MediaWikiServices::getInstance()->getStatsdDataFactory();
+       if ( $config->get( 'StatsdServer' ) && $stats->hasData() ) {
                try {
                        $statsdServer = explode( ':', $config->get( 'StatsdServer' ) );
                        $statsdHost = $statsdServer[0];
                        $statsdSender = new SocketSender( $statsdHost, $statsdPort );
                        $statsdClient = new SamplingStatsdClient( $statsdSender, true, false );
                        $statsdClient->setSamplingRates( $config->get( 'StatsdSamplingRates' ) );
-                       $statsdClient->send(
-                               MediaWikiServices::getInstance()->getStatsdDataFactory()->getBuffer()
-                       );
+                       $statsdClient->send( $stats->getData() );
                } catch ( Exception $ex ) {
                        MWExceptionHandler::logException( $ex );
                }
@@@ -2960,9 -2959,10 +2959,9 @@@ function wfGetPrecompiledData( $name ) 
  }
  
  /**
 - * @deprecated since 1.30 Call makeKey on a ObjectCache instance
 - *
   * Make a cache key for the local wiki.
   *
 + * @deprecated since 1.30 Call makeKey on a BagOStuff instance
   * @param string $args,...
   * @return string
   */
@@@ -2993,13 -2993,14 +2992,13 @@@ function wfForeignMemcKey( $db, $prefi
  }
  
  /**
 - * @deprecated since 1.30 Call makeGlobalKey on a ObjectCache instance
 - *
   * Make a cache key with database-agnostic prefix.
   *
   * Doesn't have a wiki-specific namespace. Uses a generic 'global' prefix
   * instead. Must have a prefix as otherwise keys that use a database name
   * in the first segment will clash with wfMemcKey/wfForeignMemcKey.
   *
 + * @deprecated since 1.30 Call makeGlobalKey on a BagOStuff instance
   * @since 1.26
   * @param string $args,...
   * @return string
@@@ -3515,9 -3516,7 +3514,9 @@@ function wfIsBadImage( $name, $contextT
        }
  
        $cache = ObjectCache::getLocalServerInstance( 'hash' );
 -      $key = wfMemcKey( 'bad-image-list', ( $blacklist === null ) ? 'default' : md5( $blacklist ) );
 +      $key = $cache->makeKey(
 +              'bad-image-list', ( $blacklist === null ) ? 'default' : md5( $blacklist )
 +      );
        $badImages = $cache->get( $key );
  
        if ( $badImages === false ) { // cache miss